[INFO] fetching crate afire 3.0.0-alpha.2...
[INFO] checking afire-3.0.0-alpha.2 against master#158f00a1c5175648af6f6099b075f78d1d014a28 for pr-121251
[INFO] extracting crate afire 3.0.0-alpha.2 into /workspace/builds/worker-3-tc1/source
[INFO] validating manifest of crates.io crate afire 3.0.0-alpha.2 on toolchain 158f00a1c5175648af6f6099b075f78d1d014a28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate afire 3.0.0-alpha.2
[INFO] finished tweaking crates.io crate afire 3.0.0-alpha.2
[INFO] tweaked toml for crates.io crate afire 3.0.0-alpha.2 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] crate crates.io crate afire 3.0.0-alpha.2 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 6467fd7770383e7bb637275947409a8851e9c4fd9883f5551b688bfed04daf6f
[INFO] running `Command { std: "docker" "start" "-a" "6467fd7770383e7bb637275947409a8851e9c4fd9883f5551b688bfed04daf6f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6467fd7770383e7bb637275947409a8851e9c4fd9883f5551b688bfed04daf6f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6467fd7770383e7bb637275947409a8851e9c4fd9883f5551b688bfed04daf6f", kill_on_drop: false }`
[INFO] [stdout] 6467fd7770383e7bb637275947409a8851e9c4fd9883f5551b688bfed04daf6f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+158f00a1c5175648af6f6099b075f78d1d014a28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d7ef14d1fa20d2d839a0d06b3ec4640489217970510c4d15f33b96cfa268c660
[INFO] running `Command { std: "docker" "start" "-a" "d7ef14d1fa20d2d839a0d06b3ec4640489217970510c4d15f33b96cfa268c660", kill_on_drop: false }`
[INFO] [stderr]     Checking afire v3.0.0-alpha.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: using `.deref()` on a double reference, which returns `&str` instead of dereferencing the inner type
[INFO] [stdout]   --> lib/proto/http/content_type.rs:46:36
[INFO] [stdout]    |
[INFO] [stdout] 46 |             Content::Custom(i) => i.deref().into(),
[INFO] [stdout]    |                                    ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `afire::extensions`
[INFO] [stdout]   --> examples/tmp.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     extensions::{Date, Head, Logger, RedirectResponse, RouteShorthands, ServeStatic, Trace},
[INFO] [stdout]    |     ^^^^^^^^^^ could not find `extensions` in `afire`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get` found for struct `afire::Server` in the current scope
[INFO] [stdout]   --> examples/tmp.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 |     server.get("/**", |ctx| {
[INFO] [stdout]    |     -------^^^ method not found in `Server`
[INFO] [stdout]    |
[INFO] [stdout] help: some of the expressions' fields have a method of the same name
[INFO] [stdout]    |
[INFO] [stdout] 36 |     server.default_headers.get("/**", |ctx| {
[INFO] [stdout]    |            ++++++++++++++++
[INFO] [stdout] 36 |     server.middleware.get("/**", |ctx| {
[INFO] [stdout]    |            +++++++++++
[INFO] [stdout] 36 |     server.routes.get("/**", |ctx| {
[INFO] [stdout]    |            +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get` found for struct `afire::Server` in the current scope
[INFO] [stdout]   --> examples/tmp.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 43 |     server.get("/{}/{}/{}", |ctx| {
[INFO] [stdout]    |     -------^^^ method not found in `Server`
[INFO] [stdout]    |
[INFO] [stdout] help: some of the expressions' fields have a method of the same name
[INFO] [stdout]    |
[INFO] [stdout] 43 |     server.default_headers.get("/{}/{}/{}", |ctx| {
[INFO] [stdout]    |            ++++++++++++++++
[INFO] [stdout] 43 |     server.middleware.get("/{}/{}/{}", |ctx| {
[INFO] [stdout]    |            +++++++++++
[INFO] [stdout] 43 |     server.routes.get("/{}/{}/{}", |ctx| {
[INFO] [stdout]    |            +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get` found for struct `afire::Server` in the current scope
[INFO] [stdout]   --> examples/tmp.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 51 |     server.get("/yt/{id}", |ctx| {
[INFO] [stdout]    |     -------^^^ method not found in `Server`
[INFO] [stdout]    |
[INFO] [stdout] help: some of the expressions' fields have a method of the same name
[INFO] [stdout]    |
[INFO] [stdout] 51 |     server.default_headers.get("/yt/{id}", |ctx| {
[INFO] [stdout]    |            ++++++++++++++++
[INFO] [stdout] 51 |     server.middleware.get("/yt/{id}", |ctx| {
[INFO] [stdout]    |            +++++++++++
[INFO] [stdout] 51 |     server.routes.get("/yt/{id}", |ctx| {
[INFO] [stdout]    |            +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.deref()` on a double reference, which returns `&str` instead of dereferencing the inner type
[INFO] [stdout]   --> lib/proto/http/content_type.rs:46:36
[INFO] [stdout]    |
[INFO] [stdout] 46 |             Content::Custom(i) => i.deref().into(),
[INFO] [stdout]    |                                    ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] warning: 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `afire` (example "tmp") due to 5 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "d7ef14d1fa20d2d839a0d06b3ec4640489217970510c4d15f33b96cfa268c660", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d7ef14d1fa20d2d839a0d06b3ec4640489217970510c4d15f33b96cfa268c660", kill_on_drop: false }`
[INFO] [stdout] d7ef14d1fa20d2d839a0d06b3ec4640489217970510c4d15f33b96cfa268c660
[INFO] checking afire-3.0.0-alpha.2 against try#b4fc5dbf0bc33be331f9d893db5b3a794f29724a+rustflags=-Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds for pr-121251
[INFO] extracting crate afire 3.0.0-alpha.2 into /workspace/builds/worker-3-tc2/source
[INFO] validating manifest of crates.io crate afire 3.0.0-alpha.2 on toolchain b4fc5dbf0bc33be331f9d893db5b3a794f29724a
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate afire 3.0.0-alpha.2
[INFO] finished tweaking crates.io crate afire 3.0.0-alpha.2
[INFO] tweaked toml for crates.io crate afire 3.0.0-alpha.2 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] crate crates.io crate afire 3.0.0-alpha.2 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 91503b341517dc7a3d47c9b0f51a14a613b4d2e87279fc79c296ba5178cff022
[INFO] running `Command { std: "docker" "start" "-a" "91503b341517dc7a3d47c9b0f51a14a613b4d2e87279fc79c296ba5178cff022", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "91503b341517dc7a3d47c9b0f51a14a613b4d2e87279fc79c296ba5178cff022", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "91503b341517dc7a3d47c9b0f51a14a613b4d2e87279fc79c296ba5178cff022", kill_on_drop: false }`
[INFO] [stdout] 91503b341517dc7a3d47c9b0f51a14a613b4d2e87279fc79c296ba5178cff022
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dexplicit_range -Dtrait_impl_range -Wrange_syntax -Wrange_bounds" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+b4fc5dbf0bc33be331f9d893db5b3a794f29724a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 277e8ee44f7087f8ca0e60b075364c3514f595632145c218c108b4591e4c9ebc
[INFO] running `Command { std: "docker" "start" "-a" "277e8ee44f7087f8ca0e60b075364c3514f595632145c218c108b4591e4c9ebc", kill_on_drop: false }`
[INFO] [stderr]     Checking afire v3.0.0-alpha.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/base64.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 15 |     for i in (0..inp.len()).step_by(3) {
[INFO] [stdout]    |               ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/base64.rs:63:65
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     out.extend_from_slice(&decode.to_be_bytes()[1..i]);
[INFO] [stdout]    |                                                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/base64.rs:70:53
[INFO] [stdout]    |
[INFO] [stdout] 70 |         out.extend_from_slice(&decode.to_be_bytes()[1..4]);
[INFO] [stdout]    |                                                     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> lib/internal/encoding/sha1.rs:19:20
[INFO] [stdout]    |
[INFO] [stdout] 19 |     padded_message[msg_len - 8..].copy_from_slice(&(8 * message.len() as u64).to_be_bytes());
[INFO] [stdout]    |                    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/sha1.rs:23:18
[INFO] [stdout]    |
[INFO] [stdout] 23 |         for i in 0..16 {
[INFO] [stdout]    |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/sha1.rs:31:18
[INFO] [stdout]    |
[INFO] [stdout] 31 |         for i in 16..80 {
[INFO] [stdout]    |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/sha1.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     out[0..4].copy_from_slice(&h0.to_be_bytes());
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/sha1.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |     out[4..8].copy_from_slice(&h1.to_be_bytes());
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/sha1.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     out[8..12].copy_from_slice(&h2.to_be_bytes());
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/sha1.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     out[12..16].copy_from_slice(&h3.to_be_bytes());
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/sha1.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |     out[16..20].copy_from_slice(&h4.to_be_bytes());
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> lib/internal/router.rs:261:38
[INFO] [stdout]     |
[INFO] [stdout] 261 |                         if self.path[i..i + l.len()] != chars {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> lib/internal/router.rs:280:18
[INFO] [stdout]     |
[INFO] [stdout] 280 |             Some(self.path_index..end_pos)
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/thread_pool.rs:60:18
[INFO] [stdout]    |
[INFO] [stdout] 60 |         for i in 0..size {
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> lib/thread_pool.rs:118:22
[INFO] [stdout]     |
[INFO] [stdout] 118 |             for _ in 0..to_add {
[INFO] [stdout]     |                      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> lib/thread_pool.rs:132:10
[INFO] [stdout]     |
[INFO] [stdout] 132 |         (0..to_remove).for_each(|_| sender.send(Message::KillWait(barrier.clone())).unwrap());
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> lib/thread_pool.rs:213:18
[INFO] [stdout]     |
[INFO] [stdout] 213 |         for _ in 0..self.threads() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/proto/http/multipart.rs:98:28
[INFO] [stdout]    |
[INFO] [stdout] 98 |         let entries = data[1..data.len() - 1]
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> lib/proto/http/multipart.rs:173:24
[INFO] [stdout]     |
[INFO] [stdout] 173 |         out.push(&data[start..s]);
[INFO] [stdout]     |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> lib/proto/http/multipart.rs:177:20
[INFO] [stdout]     |
[INFO] [stdout] 177 |     out.push(&data[start..]);
[INFO] [stdout]     |                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/proto/websocket/frame.rs:80:25
[INFO] [stdout]    |
[INFO] [stdout] 80 |         let mask = &buf[offset..offset + 4];
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/proto/websocket/frame.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 81 |         for i in 0..payload_len as usize {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/base64.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 15 |     for i in (0..inp.len()).step_by(3) {
[INFO] [stdout]    |               ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/base64.rs:63:65
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     out.extend_from_slice(&decode.to_be_bytes()[1..i]);
[INFO] [stdout]    |                                                                 ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/base64.rs:70:53
[INFO] [stdout]    |
[INFO] [stdout] 70 |         out.extend_from_slice(&decode.to_be_bytes()[1..4]);
[INFO] [stdout]    |                                                     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]   --> lib/internal/encoding/sha1.rs:19:20
[INFO] [stdout]    |
[INFO] [stdout] 19 |     padded_message[msg_len - 8..].copy_from_slice(&(8 * message.len() as u64).to_be_bytes());
[INFO] [stdout]    |                    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/sha1.rs:23:18
[INFO] [stdout]    |
[INFO] [stdout] 23 |         for i in 0..16 {
[INFO] [stdout]    |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/sha1.rs:31:18
[INFO] [stdout]    |
[INFO] [stdout] 31 |         for i in 16..80 {
[INFO] [stdout]    |                  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/sha1.rs:71:9
[INFO] [stdout]    |
[INFO] [stdout] 71 |     out[0..4].copy_from_slice(&h0.to_be_bytes());
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/sha1.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 |     out[4..8].copy_from_slice(&h1.to_be_bytes());
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/sha1.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     out[8..12].copy_from_slice(&h2.to_be_bytes());
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/sha1.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |     out[12..16].copy_from_slice(&h3.to_be_bytes());
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/internal/encoding/sha1.rs:75:9
[INFO] [stdout]    |
[INFO] [stdout] 75 |     out[16..20].copy_from_slice(&h4.to_be_bytes());
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> lib/internal/router.rs:261:38
[INFO] [stdout]     |
[INFO] [stdout] 261 |                         if self.path[i..i + l.len()] != chars {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> lib/internal/router.rs:280:18
[INFO] [stdout]     |
[INFO] [stdout] 280 |             Some(self.path_index..end_pos)
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/thread_pool.rs:60:18
[INFO] [stdout]    |
[INFO] [stdout] 60 |         for i in 0..size {
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> lib/thread_pool.rs:118:22
[INFO] [stdout]     |
[INFO] [stdout] 118 |             for _ in 0..to_add {
[INFO] [stdout]     |                      ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> lib/thread_pool.rs:132:10
[INFO] [stdout]     |
[INFO] [stdout] 132 |         (0..to_remove).for_each(|_| sender.send(Message::KillWait(barrier.clone())).unwrap());
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> lib/thread_pool.rs:213:18
[INFO] [stdout]     |
[INFO] [stdout] 213 |         for _ in 0..self.threads() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/proto/http/multipart.rs:98:28
[INFO] [stdout]    |
[INFO] [stdout] 98 |         let entries = data[1..data.len() - 1]
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> lib/proto/http/multipart.rs:173:24
[INFO] [stdout]     |
[INFO] [stdout] 173 |         out.push(&data[start..s]);
[INFO] [stdout]     |                        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> lib/proto/http/multipart.rs:177:20
[INFO] [stdout]     |
[INFO] [stdout] 177 |     out.push(&data[start..]);
[INFO] [stdout]     |                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/proto/websocket/frame.rs:80:25
[INFO] [stdout]    |
[INFO] [stdout] 80 |         let mask = &buf[offset..offset + 4];
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> lib/proto/websocket/frame.rs:81:18
[INFO] [stdout]    |
[INFO] [stdout] 81 |         for i in 0..payload_len as usize {
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: using `.deref()` on a double reference, which returns `&str` instead of dereferencing the inner type
[INFO] [stdout]   --> lib/proto/http/content_type.rs:46:36
[INFO] [stdout]    |
[INFO] [stdout] 46 |             Content::Custom(i) => i.deref().into(),
[INFO] [stdout]    |                                    ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 23 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `afire::extensions`
[INFO] [stdout]   --> examples/tmp.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 |     extensions::{Date, Head, Logger, RedirectResponse, RouteShorthands, ServeStatic, Trace},
[INFO] [stdout]    |     ^^^^^^^^^^ could not find `extensions` in `afire`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]   --> examples/tmp.rs:44:23
[INFO] [stdout]    |
[INFO] [stdout] 44 |         let params = (0..3)
[INFO] [stdout]    |                       ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-W range-syntax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `Range` range syntax
[INFO] [stdout]    --> examples/tmp.rs:147:18
[INFO] [stdout]     |
[INFO] [stdout] 147 |         for i in 0..10 {
[INFO] [stdout]     |                  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> examples/tmp.rs:165:26
[INFO] [stdout]     |
[INFO] [stdout] 165 |                 for i in 0.. {
[INFO] [stdout]     |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: usage of `RangeFrom` range syntax
[INFO] [stdout]    --> examples/tmp.rs:376:30
[INFO] [stdout]     |
[INFO] [stdout] 376 |         &self.inner.as_ref()[(len as usize)..]
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get` found for struct `afire::Server` in the current scope
[INFO] [stdout]   --> examples/tmp.rs:36:12
[INFO] [stdout]    |
[INFO] [stdout] 36 |     server.get("/**", |ctx| {
[INFO] [stdout]    |     -------^^^ method not found in `Server`
[INFO] [stdout]    |
[INFO] [stdout] help: some of the expressions' fields have a method of the same name
[INFO] [stdout]    |
[INFO] [stdout] 36 |     server.default_headers.get("/**", |ctx| {
[INFO] [stdout]    |            ++++++++++++++++
[INFO] [stdout] 36 |     server.middleware.get("/**", |ctx| {
[INFO] [stdout]    |            +++++++++++
[INFO] [stdout] 36 |     server.routes.get("/**", |ctx| {
[INFO] [stdout]    |            +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get` found for struct `afire::Server` in the current scope
[INFO] [stdout]   --> examples/tmp.rs:43:12
[INFO] [stdout]    |
[INFO] [stdout] 43 |     server.get("/{}/{}/{}", |ctx| {
[INFO] [stdout]    |     -------^^^ method not found in `Server`
[INFO] [stdout]    |
[INFO] [stdout] help: some of the expressions' fields have a method of the same name
[INFO] [stdout]    |
[INFO] [stdout] 43 |     server.default_headers.get("/{}/{}/{}", |ctx| {
[INFO] [stdout]    |            ++++++++++++++++
[INFO] [stdout] 43 |     server.middleware.get("/{}/{}/{}", |ctx| {
[INFO] [stdout]    |            +++++++++++
[INFO] [stdout] 43 |     server.routes.get("/{}/{}/{}", |ctx| {
[INFO] [stdout]    |            +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `get` found for struct `afire::Server` in the current scope
[INFO] [stdout]   --> examples/tmp.rs:51:12
[INFO] [stdout]    |
[INFO] [stdout] 51 |     server.get("/yt/{id}", |ctx| {
[INFO] [stdout]    |     -------^^^ method not found in `Server`
[INFO] [stdout]    |
[INFO] [stdout] help: some of the expressions' fields have a method of the same name
[INFO] [stdout]    |
[INFO] [stdout] 51 |     server.default_headers.get("/yt/{id}", |ctx| {
[INFO] [stdout]    |            ++++++++++++++++
[INFO] [stdout] 51 |     server.middleware.get("/yt/{id}", |ctx| {
[INFO] [stdout]    |            +++++++++++
[INFO] [stdout] 51 |     server.routes.get("/yt/{id}", |ctx| {
[INFO] [stdout]    |            +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 4 previous errors; 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0432, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stdout] warning: using `.deref()` on a double reference, which returns `&str` instead of dereferencing the inner type
[INFO] [stdout]   --> lib/proto/http/content_type.rs:46:36
[INFO] [stdout]    |
[INFO] [stdout] 46 |             Content::Custom(i) => i.deref().into(),
[INFO] [stdout]    |                                    ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(suspicious_double_ref_op)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `afire` (example "tmp") due to 5 previous errors; 4 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: 23 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "277e8ee44f7087f8ca0e60b075364c3514f595632145c218c108b4591e4c9ebc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "277e8ee44f7087f8ca0e60b075364c3514f595632145c218c108b4591e4c9ebc", kill_on_drop: false }`
[INFO] [stdout] 277e8ee44f7087f8ca0e60b075364c3514f595632145c218c108b4591e4c9ebc
